import numpy as np

# 路面跳车指数（PBI）
# PBI = 100 - sum(ai * PBi)
# ai 第 i 类程度的路面跳车单位扣分
ai = np.array([[0, 25, 50]]).reshape(-1, 1)
# PBi 第 i 类程度的路面跳车数

# PB 路面跳车数
# 每 0.1m 计一个高程，10m 路面纵断面共计 100 个高程数据。
# 假设路面长度50 Km
# 50 * 1000 / 10 = 5000

N = 50 * 1000 // 10

# H = np.random.randint(1, 10, (N, 100))
# H = np.ceil(np.abs(np.random.normal(3, 1.8, size=(N, 100))))
# print(H)
PBi = np.abs(np.random.normal(0, 0.1, size=(3, 1)))
# print(PBi)


def PBI():
    return 100 - np.sum(ai * PBi)
